#ifndef POLLER_H
#define POLLER_H

#include <vector>

class Channel;

class Poller {
public:
    virtual ~Poller() = default;

    virtual void poll(int timeoutMs, std::vector<Channel*>& activeChannels) = 0;
    virtual void updateChannel(Channel* channel) = 0;
    virtual void removeChannel(Channel* channel) = 0;
};

#endif